package pe.com.tma.bean;

import java.util.Date;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.servlet.http.HttpSession;

import pe.com.tma.model.Movimientoctacliente;
import pe.com.tma.model.Parametro;
import pe.com.tma.model.Usuario;
import pe.com.tma.service.CarteraService;
import pe.com.tma.service.EstadoCuentaService;
import pe.com.tma.util.BusquedaGrl;
import pe.com.tma.util.ParametrosGrl;


@ManagedBean(name="cuentaBean")
@RequestScoped
public class EstadoCuentaBean {

	private static final long serialVersionUID = 1L;
	
	private Usuario user;
	private List<Movimientoctacliente> cuenta;
	private BusquedaGrl busc;
	private Number total;
	private EstadoCuentaService srv;
	private ParametrosGrl grl = new ParametrosGrl();
	
	public EstadoCuentaBean(){
		FacesContext fCtx = FacesContext.getCurrentInstance();
		HttpSession session = (HttpSession) fCtx.getExternalContext().getSession(true);
		user = (Usuario) session.getAttribute("user");
		srv = new EstadoCuentaService();
		//cuenta = srv.obtenerEstadoCuenta(user);
		busc = new BusquedaGrl();
		Date dt= new Date(); 
		
		busc.setFecDesde(grl.getFechaActual());
		
	}
	
	public void buscar(ActionEvent actionEvent){
		
		cuenta = srv.obtenerEstadoCuenta(user,busc);
	}
	
	
	public List<Movimientoctacliente> getCuenta() {
		return cuenta;
	}
	public void setCuenta(List<Movimientoctacliente> cuenta) {
		this.cuenta = cuenta;
	}


	public Number getTotal() {
		if(cuenta !=null){
			total = 0;
			for(int i=0;i<cuenta.size();i++){
				total = total.doubleValue() + cuenta.get(i).getMontoMovimiento().doubleValue(); 
			}
		}
		
		return total;
	}


	public void setTotal(Number total) {
		this.total = total;
	}


	public BusquedaGrl getBusc() {
		return busc;
	}


	public void setBusc(BusquedaGrl busc) {
		this.busc = busc;
	}
	
		
	
}
